﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using ServiceGerenciador.Model;


public partial class paginas_Produtos : System.Web.UI.Page
{
    protected int ModelId
    {
        get
        {
            if (Request.QueryString["idProduto"] != null)
            {
                return Convert.ToInt32(Request.QueryString["idProduto"]);
            }
            else
            {
                return 0;
            }
        }
    }

    protected void Page_Load(object sender, EventArgs e)
    {
        Initialize();
    }

    private void Initialize()
    {
        if (!IsPostBack)
        {
            if (this.ModelId > 0)
            {
                Prod prod = new Prod();
                prod = Prod.Find(ModelId);

                txtProduto.Text = Convert.ToString(prod.produto);
                txtPreco.Text = Convert.ToString(prod.precoCusto);
                txtPrecov.Text = Convert.ToString(prod.precoVenda);
                txtDesconto.Text = Convert.ToString(prod.desconto);
                txtQtdeEstoque.Text = Convert.ToString(prod.estoque);
                txtEstoque.Text = Convert.ToString(prod.estoqueMinimo);
                txtObs.Text = Convert.ToString(prod.observacao);
            }
        }
    }

    protected void btn_pedit_Click(object sender, EventArgs e)
    {
        if (Page.IsValid)
        {
            if (ModelId > 0)
            {
                Prod prod = Prod.Find(ModelId);

                prod.produto = txtProduto.Text;
                prod.precoCusto = Convert.ToDecimal(txtPreco.Text);
                prod.precoVenda = Convert.ToDecimal(txtPrecov.Text);
                prod.desconto = Convert.ToDecimal(txtDesconto.Text);
                prod.estoque = Convert.ToInt32(txtQtdeEstoque.Text);
                prod.estoqueMinimo = Convert.ToInt32(txtEstoque.Text);
                prod.observacao = txtObs.Text;

                prod.Update();

                ApplicationEnvironment.Instance.Flash["Notice"] = "Produto atualizado com sucesso!";

                Response.Redirect("Produtos.aspx");
            }
            else
            {
                Prod prod = new Prod();

                prod.produto = txtProduto.Text;
                prod.precoCusto = Convert.ToDecimal(txtPreco.Text);
                prod.precoVenda = Convert.ToDecimal(txtPrecov.Text);
                prod.desconto = Convert.ToDecimal(txtDesconto.Text);
                prod.estoque = Convert.ToInt32(txtQtdeEstoque.Text);
                prod.estoqueMinimo = Convert.ToInt32(txtEstoque.Text);
                prod.observacao = txtObs.Text;

                prod.Save();

                ApplicationEnvironment.Instance.Flash["Notice"] = "Produto cadastrado com sucesso!";

                Response.Redirect("Produtos.aspx");
            }
        }
    }

    protected void btnCancelar_Click(object sender, EventArgs e)
    {
        Response.Redirect("Produtos.aspx");
    }

    protected void btn_pexcluir_Click1(object sender, EventArgs e)
    {
        Prod.Find(ModelId).Delete();
        ApplicationEnvironment.Instance.Flash["Notice"] = "Produto excluído com sucesso!";
        Response.Redirect("Produtos.aspx");
    }
}
